const mongoose = require('./setmongoose');

// 删除现有的集合
async function resetDatabase() {
    try {
        console.log('开始重置数据库...');
        
        // 获取所有集合名称
        const collections = await mongoose.connection.db.listCollections().toArray();
        
        // 删除所有集合
        for (let collection of collections) {
            if (collection.name !== 'system.indexes') {
                console.log(`删除集合: ${collection.name}`);
                await mongoose.connection.db.dropCollection(collection.name);
            }
        }
        
        console.log('数据库重置完成！');
        console.log('请重启服务器以应用新的数据模型。');
        
    } catch (error) {
        console.error('重置数据库失败:', error);
    } finally {
        // 关闭数据库连接
        await mongoose.connection.close();
        process.exit(0);
    }
}

// 如果直接运行此脚本
if (require.main === module) {
    resetDatabase();
}

module.exports = { resetDatabase };

